Skip to content

[3.14] gh-155218: Generate the option group flags in a stable order (GH-155219) - #155224

Merged
serhiy-storchaka merged 1 commit into
python:3.14from
serhiy-storchaka:bp-order-3.14
Aug 5, 2026
Merged

[3.14] gh-155218: Generate the option group flags in a stable order (GH-155219)#155224
serhiy-storchaka merged 1 commit into
python:3.14from
serhiy-storchaka:bp-order-3.14

Conversation

@serhiy-storchaka

@serhiy-storchaka serhiy-storchaka commented Aug 5, 2026

Copy link
Copy Markdown
Member

They were emitted in the iteration order of a set of group identifiers.
The identifiers of the groups before the required parameters are small
negative integers, -1 and -2 have the same hash, so their order depended
on the size of Py_hash_t, and the code generated on a 32-bit platform
differed from the checked in one.

They are now emitted in the order of the parameters.
(cherry picked from commit 7aec160)

Co-authored-by: Serhiy Storchaka storchaka@gmail.com
Co-Authored-By: Claude Opus 5 (1M context) noreply@anthropic.com

…ythonGH-155219)

They were emitted in the iteration order of a set of group identifiers.
The identifiers of the groups before the required parameters are small
negative integers, -1 and -2 have the same hash, so their order depended
on the size of Py_hash_t, and the code generated on a 32-bit platform
differed from the checked in one.

They are now emitted in the order of the parameters.
(cherry picked from commit 7aec160)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@serhiy-storchaka
serhiy-storchaka enabled auto-merge (squash) August 5, 2026 09:07
@serhiy-storchaka
serhiy-storchaka merged commit 2d684b1 into python:3.14 Aug 5, 2026
59 checks passed
deadlovelll pushed a commit to deadlovelll/cpython that referenced this pull request Aug 5, 2026
…rder (pythonGH-155219) (pythonGH-155224)

They were emitted in the iteration order of a set of group identifiers.
The identifiers of the groups before the required parameters are small
negative integers, -1 and -2 have the same hash, so their order depended
on the size of Py_hash_t, and the code generated on a 32-bit platform
differed from the checked in one.

They are now emitted in the order of the parameters.
(cherry picked from commit 7aec160)

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant